#pragma once
#include "TCharSupport.h"
#include "EpilExpressionCodeBase.h"
#include "EpilParameterListCode.h"
#include "EpilChunkCode.h"


class EpilFunctionBodyExpressionCode : public EpilExpressionCodeBase
{
	EPIL_CODE_DECL( FunctionBodyExpression );

public:
	EpilFunctionBodyExpressionCode( const EpilLexLocation & location );
	virtual ~EpilFunctionBodyExpressionCode();

	EpilParameterListCode *				GetParameterList() const								{ return m_parameterList; }
	void								SetParameterList( EpilParameterListCode * paramList )	{ m_parameterList = paramList; }
	EpilChunkCode *						GetChunk() const										{ return m_chunk; }
	void								SetChunk( EpilChunkCode * chunk )						{ m_chunk = chunk; }

	virtual tstring						ToEpilCode( int indent = 0 ) const;

private:
	EpilParameterListCode *				m_parameterList;
	EpilChunkCode *						m_chunk;
};